home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / share / mc / extfs / uha < prev    next >
Text File  |  2009-10-25  |  969b  |  53 lines

  1. #!/bin/sh
  2. #
  3. # It is the uhafs Valery Kornienkov vlk@st.simbirsk.su 2:5051/30@fidonet
  4. # ver 0.1 Thu Apr  6 12:05:08 2000
  5. #
  6. # Tested with HA 0.999.  Source of ha can be found at
  7. # ftp://ftp.ibiblio.org/pub/Linux/utils/compress/
  8.  
  9. HA=ha
  10.  
  11. mchafs_list ()
  12. {
  13.     $HA lf "$1" 2>/dev/null | mawk -v uid=$(id -ru)  '
  14. /^===========/ {next}
  15. {
  16.  if ($5="%" && $8~/DIR|ASC|HSC|CPY/) {
  17.    split($6, a, "-")
  18.    split($7, t, ":")
  19.    filename=$1
  20.    filesize=$2
  21.    getline
  22.    if ($2=="(none)") $2=""
  23.    path=$2
  24.    getline
  25.    if ($1~/^d.*/) next
  26.    printf "%s %s %-8d %-8d %8d %s-%s-%s %s:%s %s%s\n",\
  27.    $1,1,0,0,filesize,a[3],a[2],a[1],t[1],t[2],path,filename
  28.   }
  29. }'
  30. }
  31.  
  32. mchafs_copyout ()
  33. {
  34.     TMPDIR=`mktemp -d "${MC_TMPDIR:-/tmp}/mctmpdir-uha.XXXXXX"` || exit 1
  35.     cd "$TMPDIR"
  36.  
  37.     $HA xyq "$1" "$2" >/dev/null
  38.     cat "$2" > "$3"
  39.  
  40.     cd /
  41.     rm -rf "$TMPDIR"
  42. }
  43.  
  44. cmd="$1"
  45. shift
  46.  
  47. case "$cmd" in
  48.   list) mchafs_list "$@" ;;
  49.   copyout) mchafs_copyout "$@" ;;
  50.   *) exit 1 ;;
  51. esac
  52. exit 0
  53.